Jump to content
Search Community

GreenSock last won the day on May 19

GreenSock had the most liked content!

GreenSock

Administrators
  • Posts

    23,185
  • Joined

  • Last visited

  • Days Won

    822

GreenSock last won the day on May 19

GreenSock had the most liked content!

Profile Information

  • Location
    Chicago Area
  • Interests
    Volleyball, Basketball, Christian Apologetics, Motorcycling

Recent Profile Visitors

100,751 profile views

GreenSock's Achievements

  1. I don't have much time right now, but I very quickly made an edit: https://codepen.io/GreenSock/pen/gOJPZqM?editors=0010 You were just killing the scrollTween and creating a whole new one, but you forgot to reset the position. So, for example, if you resized the window after the scrollbar was already 500px down from the top, you'd be creating the new scrollTween from that [new] position instead of from 0.
  2. Hm, I'm not quite sure what you mean. I'm not seeing any jump at all. Please also keep in mind that SplitType is not a GreenSock product, so we can't really support that here. Is there some secret to seeing this "jump" that you're describing?
  3. Sorry about the delay and the confusion, @Grene Thanks for pointing this out - there was indeed a bug that could affect orientation changes (they wouldn't fire a ScrollTrigger.refresh() properly. That should be fixed in the next release which you can preview at: https://assets.codepen.io/16327/ScrollTrigger.min.js In the meantime, there's an easy workaround: let mm = gsap.matchMedia(); mm.add("(orientation: portrait)", () => { ScrollTrigger.refresh(); return () => ScrollTrigger.refresh(); }); Technically, you could do this instead, but I don't think it's as well-supported across browsers: window.addEventListener("orientationchange", () => ScrollTrigger.refresh()); Does that resolve things for you?
  4. From the docs: There is a helper function that can help in that situation. You also need to make sure the elements are in the document flow so that calculations can be done correctly, but you had display: none on the parent. So you could toggle that for the split. https://codepen.io/GreenSock/pen/RwmrWPy?editors=1010 Better?
  5. Pseudo elements are not accessible to JavaScript. That's a browser limitation, unrelated to GSAP. Usually a good workaround is to use CSS variables (GSAP can animate those), but that might be tricky for a drawSVG effect. If you can use a normal element, that's probably best.
  6. One other guess: make sure you register the useGSAP hook and ScrollTrigger: gsap.registerPlugin(useGSAP, ScrollTrigger);
  7. Hi @pedrobear. There's a lot of very custom logic in that CodePen demo, and it's well beyond the scope of help we can provide for free in these forums, but if you'd like to isolate a very specific problem in a much simpler version, we'd be happy to take a peek and help with any GSAP-specific questions. It looks likely to me that the snap-back with the arrow functionality has to do with logic flaws in where you're animating to (calculations). As for being sluggish, there are a lot of factors with that (performance is a very deep topic), but one possibility is that browsers have rendering engines that are optimized for vertical scrolling, not as much horizontal scrolling, so you may be hitting some browser-specific optimization limitations. For example, I know that if you have elements that go beyond a certain width, the browser forces it to get broken into multiple tiles for the graphics renderer, and switching between them can be a little expensive. None of that has anything to do with GSAP. Good luck!
  8. I read your description a few times and I still have no idea what you're asking, sorry. Maybe I'm just too sleep-deprived and someone else may understand, but I'm totally lost.
  9. Are you looking for something like this?: https://codepen.io/GreenSock/pen/PovPzpv?editors=0010
  10. If I understand your goal correctly, you can just use ScrollSmoother's paused() method: https://codepen.io/GreenSock/pen/vYwNNdP?editors=0010
  11. I read your post several times and I don't understand what you're asking, sorry. I'm not sure what you're trying to do. You seem to have .info-content-right stuff that has a width of 100% which ends up being 0 (check dev tools), so none of it would be visible anyway. I'm just completely lost about what you're trying to do, sorry. 🤷‍♂️
  12. Yeah, it's just a logic issue in your code: // bad .to(item, { background: "#ed3c3c",boxShadow:'0 0 16px #ed3c3c' }, 0.5 * i) // good .to(item, { background: "#ed3c3c",boxShadow:'0 0 16px #ed3c3c' }, 0.5 * (i-1)) You were running that logic on only the 2nd item and after. Thus everything starts at 0.5 seconds into the timeline. https://codepen.io/GreenSock/pen/PovweLe?editors=0010
×
×
  • Create New...